The present invention relates to a system for decoding a high density multiple bar code on a record medium at a high rate of speed and more particularly, relates to a bar code decoding system which includes a CMOS/LSI CHIP for decoding a plurality of bar code labels which may be on a purchased merchandise item.
The use of bar code symbols or labels intended to be read by optical scanning equipment as a means for identifying new data useful in processing items sold in a retail industry has been widely accepted to the point that a particular bar code known as the Universal Product Code (UPC) has been established as the industry standard for the grocery and other related retail industries. In a multiple bar code, such as the UPC, each decimal number or numerical character is represented by two pairs of vertical bars and spaces within a 7-bit pattern wherein a binary 1 bit is represented by a dark module or bar of a predetermined width and the binary 0 bit is represented by a light module or a space. Thus, the decimal or character 1 may be represented in the UPC code by the 7-bit pattern 0011001. In keeping with this format, the decimal 1 would be comprised of an initial space of a 2-bit width, followed by 2-bit wide bar, another 2-bit space and a 1-bit wide bar. For each character or decimal of the system there are two bars and two spaces which have a total width of 7 modules or bits. The width of each of the bars or spaces which comprise a character may be 1, 2, 3 or 4 modules wide as long as the sum of the bars and spaces is seven bits or modules wide. Where the merchandise item is of a size that will not accommodate a standard UPC label, other bar codes have been generated such as code 128 where every character is constructed of eleven bars and spaces, code 2 of 5 where two characters are paired together using bars to represent the first character and spaces to represent the second character and code 3 of 9 where each character is represented by five bars and four intervening spaces comprising three wide and six narrow elements.
A multiple bar code, such as the UPC, is normally read by an optical scanner which may take the form of a hand-held wand or a scanner mechanism located in a checkout counter. The optical scanner will scan the bar code pattern and generate signals representing the bars and spaces for transmission to the processing apparatus which determines the character represented by the bar code pattern.
Prior optical readers generally store the electrical signals generated as a result of scanning a bar code pattern until the accumulated signals stored are sufficient to allow the processing apparatus to initiate a recognition operation to determine the character represented by the scanned bar code pattern. Because of the speed in which the scanning operation is performed, the scanning operation has to be repeated until the accumulated signals represent full bar code label. Each prior scanner was programmed to read either one type of bar code or process one type of bar code at a time. Where a scanner was programmed to read more than one type of bar code, the scanner would decode the accumulated data signals one code at a time which slowed the checkout operation considerably.